Intergrated experience of vogue system and method for shared intergrated online social interaction

ABSTRACT

A novel application and user interface for facilitating group interactions over a network integrates messaging, file sharing, media playing, journaling, profiles, and gaming into a cohesive environment. The groups facilitated by the invention are persistent and mobile in that a user does not have to recollect and reconfigure the group each time he or she wants to interact with the group online and, while online, the group may be taken from one activity to another without having to disband and reconnect at the second activity. The application is modular so as to be extensible to include other activities and functionalities. In an embodiment, the group interaction application utilizes a peer-to-peer network environment to facilitate network communications between group members.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional of U.S. patent application Ser. No.10/230,247 filed Aug. 28, 2002, entitled “SYSTEM AND METHOD FOR SHAREDINTEGRATED ONLINE SOCIAL INTERACTION”. This application is also relatedto co-pending divisional U.S. patent application entitled, INTERGRATEDEXPERIENCE OF VOGUE “SYSTEM AND METHOD FOR SHARED INTERGRATED ONLINESOCIAL INTERACTION”, (Atty. Docket No. MS300060.08/MSFTP1086USA) andco-pending divisional U.S. patent application entitled, INTERGRATEDEXPERIENCE OF VOGUE “SYSTEM AND METHOD FOR SHARED INTERGRATED ONLINESOCIAL INTERACTION”, (Atty. Docket No. MS300060.10/MSFTP1086USC). Theentireties of the aforementioned applications are incorporated herein byreference.

TECHNICAL FIELD

This invention relates generally to communication and interaction over anetwork connection and, more particularly, relates to a system andmethod for facilitating online interactions among small groups of two ormore communicating parties.

BACKGROUND OF THE INVENTION

The advent of the Internet and other networks has rapidly caused amigration of many everyday tasks from the physical world to the digitalworld. For example, communications that would in years past have beenmemorialized on paper and sent via a mail carrier are now typedelectronically and transmitted digitally over a network to the recipientalmost instantly. The physical exchange of money during transactions isbecoming less frequent, and the virtual electronic exchange of fundsover networks has become much more prevalent. Indeed, the execution oftransactions can now take place entirely online, such as over theInternet. All in all, many activities that used to require physicalpresence and physical interaction can now take place over a networkbetween remote parties who would otherwise be unable to effectivelycommunicate.

With the coming of the digital age, the one activity that has notmigrated strongly from the physical world to the digital one has beenthe group interaction. While there exists a number of mechanisms andforums for a digital communication between remote parties, none of thesehas provided a compelling solution that can lead to widespread use andgrowth. The existing communications mechanisms all fail in a number ofregards to provide a true online group experience. For example, no suchtechnologies provide a true group space within which the group membersmay explore and experience with each other through a wide range ofactivities. Rather, many existing technologies tend to focus on a singleactivity or endeavor, such as gaming or file sharing, rather than on thegroup and its activities and communication. Other technologies allowgroup chatting, but have no true sense of groups, requiring setup of thegroup each time a group chat is attempted, and providing no mechanismfor transitioning the group to an activity other than pure chattingwithout again manually setting the group up at the next activity.

While many chatting programs allow contacts to be grouped into “buddylists,” this set of contacts does not necessarily know of each other'sexistence nor do they necessarily share activities with each other. Inother words, the only sense of community is unilaterally imposed by oneuser onto his or her contacts. Furthermore, this grouping of contacts isa mere listing and does not facilitate group activities or interaction,further impeding the development of a sense of community.

In short, existing online interaction mechanisms do not provide amechanism for fostering or accessing an intimate persistent relationshipwithin a small select group of users. Moreover, the lack of groupmobility provided by existing mechanisms further serves to distinguishsuch systems from real-world physical relationships, and thus furtherserves to isolate the user hoping for significant online interaction.

There thus remains a need for an online group communication applicationthrough which an intimate group of users can interact with each other inany number of ways, and through which users can access, nurture, anddevelop their shared relationships with one another. Such a system wouldfinally provide the Internet generation with the online socialconnection and shared relationships that they now lack.

SUMMARY OF THE INVENTION

The present invention is directed to an application and user interfacefor facilitating group interactions over a network. The application andinterface are tailored to provide users with a clear sense of which oftheir friends are online and available for interactions, a sense of whatactivities a group to which they belong is engaged in, and an overallheightened feeling of connection with the group. As the group evolvesover a period of time, the group can change in size and can also developa collective history and potentially a collection of group artifactsthat have been generated or acquired by the group during their sessions.The group interaction application integrates familiar concepts such asmessaging, file sharing, media playing, journals, profiles, and gaminginto a cohesive environment that enhances a feeling of group identityamong users.

The groups facilitated by the invention are both persistent and mobile.The persistence of a group means that a user does not have toreconstruct and reconfigure the group each time he or she wants tointeract with the group online. Rather, the group retains its identitywhile offline, and any member may access the group simply via the userinterface. The mobility of a group means that while online, the groupmay be taken from one activity to another without having to disband andreconnect at the second activity. Another way to view this aspect of theapplication is to consider the second activity to be automaticallypre-populated with the group members. This pre-population eases thetransitioning of the group between activities, thus improving thelikelihood that the group will engage in a wider range of activities,and also conveying a sense of permanence of the group.

In an embodiment of the invention, the group interaction applicationutilizes a peer-to-peer network environment to facilitate networkcommunications between group members. However, any networking technologymay alternatively be used, including hybrid networks or non-peer-to-peernetworks. The application is further configured to be modular so that itis extensible to include other activities and functionalities as desiredby consumers and as provided by third party developers.

Additional features and advantages of the invention will be madeapparent from the following detailed description of illustrativeembodiments that proceeds with reference to the accompanying figures.

BRIEF DESCRIPTION OF THE DRAWINGS

While the appended claims set forth the features of the presentinvention with particularity, the invention, together with its objectsand advantages, may be best understood from the following detaileddescription taken in conjunction with the accompanying drawings ofwhich:

FIG. 1 is a schematic diagram generally illustrating an exemplarycomputer system usable to implement an embodiment of the invention;

FIG. 2 is a schematic diagram illustrating an exemplary networkenvironment for communications in an embodiment of the invention;

FIG. 3 is a display screen representation showing a number of userinterface elements that may be presented individually or together by theapplication according to an embodiment of the invention;

FIG. 4A is display screen representation of a group space user interfaceelement according to an embodiment of the present invention;

FIG. 4B is display screen representation of an audio sharing activityspace user interface element according to an embodiment of the presentinvention;

FIG. 5 is display screen representation of an alternative group spaceuser interface element according to an embodiment of the presentinvention;

FIG. 6 is display screen representation of a group interactionapplication access bar or group bar user interface element according toan embodiment of the present invention;

FIG. 7 is display screen representation of a personal space userinterface element according to an embodiment of the present invention;

FIG. 8 is a schematic diagram showing the modular nature and componentsof an application according to an embodiment of the invention;

FIG. 9 is a schematic diagram showing a group framework employed by anapplication according to an embodiment of the invention to facilitategroup management and functionality;

FIG. 10 is a display screen representation of an alternative group spaceconfiguration including additional alternative activities andfunctionalities according to an embodiment of the invention;

FIG. 11 is a display screen representation of an alternative group spaceconfiguration combined with additional activity spaces according to anembodiment of the invention;

FIG. 12 is a display screen representation according to a scrap bookactivity within an embodiment of the invention; and

FIG. 13 is an alternative display screen representation according to ascrap book activity within an embodiment of the invention.

DETAILED DESCRIPTION OF THE INVENTION

Turning to the drawings, wherein like reference numerals refer to likeelements, the invention is described hereinafter in the context of acomputing environment. Although it is not required for practicing theinvention, the invention is described as it is implemented bycomputer-executable instructions, such as program modules, that areexecuted by a computing device. Generally, program modules includeroutines, programs, objects, components, data structures and the likethat perform particular tasks or implement particular abstract datatypes.

The invention may be implemented in many different computing deviceconfigurations. For example, the invention may be realized in hand-helddevices, mobile phones, multi-processor systems, microprocessor-based orprogrammable consumer electronics, network PCs, minicomputers, mainframecomputers and the like, wearable computing or communication devices, andany other device capable of both visual display and direct or indirectcommunication with another device. The invention may also be practicedin distributed computing environments, where tasks are performed byremote processing devices that are linked through a communicationsnetwork. In a distributed computing environment, program modules may belocated in both local and remote memory storage devices. Thus it will beunderstood that the invention is preferably incorporated into many typesof computing environments as suggested above.

Before describing the invention in greater detail, an example computingenvironment in which the invention may operate is described inconnection with FIG. 1. The computing device 20 includes a processingunit 21, a system memory 22, and a system bus 23 that couples varioussystem components including the system memory to the processing unit 21.The system bus 23 may be any of several types of bus structuresincluding a memory bus or memory controller, a peripheral bus, and alocal bus using any of a variety of bus architectures. The system memoryincludes read only memory (ROM) 24 and random access memory (RAM) 25. Abasic input/output system (BIOS) 26, containing the basic routines thathelp to transfer information between elements within the computingdevice 20, such as during start-up, is stored in ROM 24. The computingdevice 20 may further include a hard disk drive 27 for reading from andwriting to a hard disk 60, a magnetic disk drive 28 for reading from orwriting to a removable magnetic disk 29, and an optical disk drive 30for reading from or writing to a removable optical disk 31 such as a CDROM or other optical media.

The hard disk drive 27, magnetic disk drive 28, and optical disk drive30 are connected to the system bus 23 by a hard disk drive interface 32,a magnetic disk drive interface 33, and an optical disk drive interface34, respectively. The drives and their associated computer-readablemedia provide nonvolatile storage of computer readable instructions,data structures, program modules and other data for the PC 20. Althoughthe exemplary environment described herein employs a hard disk 60, aremovable magnetic disk 29, and a removable optical disk 31, it will beappreciated by those skilled in the art that other types of computerreadable media which can store data that is accessible by a computingdevice, such as magnetic cassettes, flash memory cards, digital videodisks, Bernoulli cartridges, random access memories, read only memories,and the like may also be used in the exemplary operating environment.

A number of program modules may be stored on the hard disk 60, magneticdisk 29, optical disk 31, ROM 24 or RAM 25, including an operatingsystem 35, one or more applications programs 36, other program modules37, and program data 38. A user may enter commands and information intothe device 20 through input devices such as a keyboard 40 and a pointingdevice 42. Other input devices (not shown) may include a microphone,joystick, game pad, satellite dish, scanner, or the like. These andother input devices are often connected to the processing unit 21through a serial port interface 46 that is coupled to the system bus,but may be connected by other interfaces, such as a parallel port, gameport or a universal serial bus (USB). A monitor 47 or other type ofdisplay device is also connected to the system bus 23 via an interface,such as a video adapter 48. In addition to the monitor, the computingdevice typically includes other peripheral output devices, not shown,such as speakers and printers.

The device 20 is operable in a networked environment using fixed ortransient logical connections to one or more remote computing devices,such as a remote computer 49. The remote computer 49 may be anothersimilar computing device, a server, a router, 20 a network PC, a peerdevice or other common network node, or any other device type such asany of those mentioned elsewhere herein, and typically includes many orall of the elements described above relative to the computing device 20,although there is no such requirement, and only a memory storage device50 has been illustrated in FIG. 1. The logical connections depicted inFIG. 1 include a local area network (LAN) 51 and a wide area network(WAN) 52. Such networking environments are commonplace in offices,enterprise-wide computer networks, intranets and the Internet.

When used in a LAN networking environment, the computing device 20 isconnected to the local network 51 through a network interface or adapter53. When used in a WAN networking environment, the computing device 20typically includes a modem 54 or other means for establishingcommunications over the WAN 52. The modem 54, which may be internal orexternal, is connected to the system bus 23 via the serial portinterface 46. Program modules depicted relative to the computing device20, or portions thereof, may be stored in the remote memory storagedevice. It will be appreciated that the network connections shown areexemplary and other means of establishing a communications link betweenthe computers may be used. Additionally, the invention is not intendedto be limited to a particular network type. Any network type, wired orwireless, fixed or transient, circuit-switched, packet-switched or othernetwork architectures, may be used to implement the present invention.

In the description that follows, the invention will be described withreference to acts and symbolic representations of operations that areperformed by one or more computing devices, unless indicated otherwise.As such, it will be understood that such acts and operations, which areat times referred to as being computer-executed, include themanipulation by the processing unit of the computing device ofelectrical signals representing data in a structured form. Thismanipulation transforms the data or maintains it at locations in thememory system of the computing device, which reconfigures or otherwisealters the operation of the computing device in a manner well understoodby those skilled in the art. The data structures where data ismaintained are physical locations of the memory that have particularproperties defined by the format of the data. However, while theinvention is being described in the foregoing context, it is not meantto be limiting as those of skill in the art will appreciate that variousof the acts and operations described hereinafter may also be implementedin hardware.

FIG. 2 is a schematic diagram of a network environment within which anembodiment of the invention may be implemented. In particular, aplurality of user devices 201, 203, 205, and 207 are illustrated asbeing communicably linked via a network 209. Each user device willtypically be used by or associated with a different user. The exactnumber of user devices so linked is not important for the presentinvention, although a network communication will typically involve atleast two users, and although the invention has its greatest benefitswhen applied to small groups, such as approximately fifteen or fewerusers. Note that the number of group members involved during audiosharing should be limited when necessary to avoid a violation of anycopyright pertaining to the shared audio material. Furthermore, the typeof network 209 is not critical, and may be peer-to-peer, server-based, ahybrid of the two, or any other type of link or network that allows anexchange of information, directly or indirectly between two or more usermachines, although a wholly or partially peer-to-peer network ispresently preferred for implementation. Via the network 209, acommunication from one user may be transmitted to another user or users(via their respective user devices). The user machines 201, 203, 205,207 typically will be remote from one another geographically althoughsuch is not required.

One or more user machines used to implement an embodiment of theinvention may be as illustrated with respect to the computing devicearchitecture of FIG. 1, although there is no such limitation inherent inthe invention. It is contemplated that an implementation of theinvention will additionally or alternatively be used with any of anumber of other communication device types, including but not limited towearable communication devices, cell phones, and PDAs.

The user interface in an embodiment of the invention is tailored to givethe user a clear sense of whom among their group of friends is online, asense of what activities the group is engaged in, and an overall senseof connection with the group. As the group evolves over time, the groupmay change and may also develop a collective history and potentially acollection of group artifacts. The group interaction application thusintegrates familiar concepts such as messaging, file sharing, mediaplaying, journals, profiles, and gaming into a cohesive environment thatfosters group identity while potentially also cultivating individualrelationships within the group.

One overall user interface presentation according to an embodiment ofthe invention will be described with reference to FIG. 3 beforedescribing individual features in greater detail. The screen display 301according to an embodiment of the invention comprises one or more of anumber of elements, all designed to further the group experience.Predominantly, a group space 303 provides a central place forinteracting with the group. Note that a particular user may have morethan one group to which he or she belongs, and that each member of agroup may belong to a group or groups to which one or more other membersdo not belong. Thus, although the relevant group space 303 appears toeach group member, and appears identically on each machine, there may beportions of a user's screen display that are not shared with other groupmembers. Thus, for example, the screen display 301 further may comprise,additionally or alternatively another group space 307 that pertains to agroup that contains the user associated with the display and at leastone other party. In addition to one or more group spaces 303, 307, anumber of other graphical features may be provided in the display 301within embodiments of the invention. For example, a group bar 305displays character images corresponding to the user, their groups andfriends (a friend essentially pertains to a group of two, the user andthe friend), and has other features as well, as will be discussed ingreater detail below. Finally, the display 301 may also include apersonal space 309, such as of a party other than the user, so that theuser may become more familiar with the individual associated with thespace 309. Various features and embodiments of the personal space 309will be discussed in greater detail below.

FIG. 4A illustrates a group space 401 in greater detail. The shape ofthe group space is that of a butterfly, although the appearance of thespace is customizable both as to shape and interior pattern, or “skin.”A library of group space shapes and skins is preferably made availableto a user, such as through series of menu items, so that each groupmember may customize the appearance of the group space. The shapesand/or skins may be organized into themes, so that a user can pick aparticular theme, such as “agriculture,” and have the appearance of thegroup space 401 change accordingly. In addition to providing users withpre-generated shapes and skins, users may customize their group spacewith shapes and skins of their own design in an embodiment of theinvention. Note that in order to preserve the true group nature of thegroup space 401, any change to its appearance by one group member ispreferably propagated to each other member machine in an embodiment ofthe invention so that each group member sees essentially the same groupspace 401 as every other group member, although such is not required.

The group space is flexible and modular, as will be describedhereinafter, however an exemplary set of group space features isillustrated within the group space 401 of FIG. 4A. Another exemplarygroup space will be described with respect to FIG. 5. The left side ofthe group space 401 incorporates a messenging or dialog area 403. Thedialog area 403 displays lines of a conversation between group membersin essentially real-time (according to network transmission and receiptcapabilities), in much the same way that a transcript records a spokenconversation. In an embodiment of the invention, each contributor typesa sentence or contribution in the entry area 415. Once the contributionis complete, the member actuates a send button 417 or other actuator sothat his or her contribution appears in every member's group spacedisplay in the dialog area 403. In an alternative embodiment of theinvention, each contributor's keyboard input in the dialog area 403 isdisplayed at each group member machine as it is entered. In this way,the contributing user can see their entry as they type, and still eachgroup member is able to see what each other group member, including thecontributor, can see. Generally, network bandwidth constraints willfavor the former approach.

In order to let each member know who the “speakers” are in the currentdialog, a character 405, 407, 409 and name 406, 408, 410 associateduniquely with each member appears next to that member's contributions inthe dialog area. The character may be a photograph, drawing, or othergraphical material chosen by the user to represent their identity andpersonal style to the group. The name may be the member's actual name,or may be any other name chosen by the member. This level ofcustomizability allows the group members greater freedom in expressingthemselves to the group, a freedom that is valuable to the generationthat most typically utilizes the Internet for entertainment purposes.

In addition to the characters 405, 407, 409, names 406, 408, 410, andthe dialog itself, other information may also appear in the dialog area403. For example, when a group member joins the conversation, such as byclicking in the dialog area 403, a notification 411 will be presented inan embodiment of the invention to indicate that the user is now engagedin the conversation. The group space 401 supports file sharingcapabilities in an embodiment of the invention. Such sharing ispreferably achieved by the dragging and dropping of a file onto thegroup space 401 by one member. In such a situation, a notification canappear inline in the dialog area 403 to let the other members know thatthe file is available. In addition to the various controls for directingand interacting with the group session, the group space 401 may alsoincorporate window controls, such as close control 425. In an embodimentof the invention, the close control 425 serves not only to close thewindow corresponding to the group space 401, but also to end the user'ssession with the group.

Another exemplary feature of the group space 401 in an embodiment of theinvention is a list or array 413 of group member characters locatedcentrally in the group space 401. The characters 413 are typically thesame as the characters used to identify speakers in the dialog area 403,and may represent all group members, or instead only those group membersthat are currently online. A series of activity selection icons 419,421, 423 is preferably made available so that the user may easily selectan activity to which to take the group. For example, by selecting theaudio icon 421, the user can introduce the group to an audio sharingactivity. When a user opens an audio activity for the group, the entireonline membership of the group is automatically taken to the audioactivity via their respective displays. In other words, the resultantaudio activity display appears on each member's screen as shown in FIG.4B. Note that the activity selection may instead be made in anembodiment of the invention indirectly via another type of control, suchas a menu that once selected yields a drop down list of activities forfurther selection.

The resultant display 450 preferably incorporates a play list 451identifying material to be played and any desired related informationsuch as duration of play as is shown in FIG. 4B. The display 450 alsopreferably includes audio controls for controlling the play of the audiomaterial, such as volume 453, pause 455, stop 457, rewind 459, and fastforward 461 controls. Each member is preferably able to alter the playlist by adding or deleting items and by controlling the current itembeing played. Thus an item add control 463 and an item remove control465 are preferably provided. Cursor keys 467 are used in an embodimentof the invention to select the play list item of interest. A notifier475 can be used to signal to other members whether or not a particularuser is tuned in to the audio activity. As with many other window types,the audio activity window 450 preferably also includes a close control471 and a minimize control 473.

The audio material shared in the audio activity may be obtained from anysource, including local memory, remote memory, a server, a peripheralaudio device, and so on without limitation. In one embodiment of theinvention, it is desirable to provide a “buy” button 469 actuatable by auser to purchase a proprietary audio item, such as may be currentlyselected in the play list 451. In this way, the user can listen to thepurchased item even when the group member that played the item in thegroup audio activity is not online, or when the user wishes to listen inprivate or with another group.

The group space 401 of FIG. 4A represents one of a number of potentialgroup space appearances and configurations. An alternative group spaceconfiguration 501 is shown in FIG. 5. In the group space 501 of FIG. 5,two group members are currently online, as indicated by the twocharacters in the character list 513. One of the group members hasdirected the group to a photo activity, wherein a photograph 519 may beshared and drawn upon, or annotated. Note that a dialog area 503 isopen, with an attendant entry area 515 and send button 517, and isusable during the photo activity, as it may be in any group spaceconfiguration and activity depending upon designer preferences.

Art tools are available for selection by each member in order toannotate the photograph 519. In particular, a pencil tool 521 allows theuser to “draw” on the photograph, while a paint tool 523 allows the userto “paint.” The user may use an eraser tool 525 to erase any annotationalready on the photograph 519. Other controls are preferably providedwithin the photo activity group space window 501 as well. For example,an add button 527 is usable to add a new photograph to the window, whilea subtract button 529 serves to remove a photograph from the window.Similarly, a close control and a minimize control may be provided,although only a close control 531 is shown in the figure. The photograph519 or photographs used in the photo activity may be obtained from anyconventional source or otherwise, such as from a scanner, from a networkinterface, from local or remote memory, or any other device or facilityusable to store or transfer an image.

Another graphical item associated with the group space and itsunderlying application in an embodiment of the invention is a group bar601, as shown in FIG. 6. The group bar 601, which can be skinned toreflect the user's personal style, serves to display a user's self,their groups, and their friends. The display of the various entities ispreferably accomplished by displaying the associated name and characteror other graphical element. Each set of entities appears in its own areaof the bar 601. Thus, the user appears as a character and name in afirst section 603, their groups appear as characters and names in asecond section 605, and the user's friends appear as characters andnames in a third section 607. Because the group bar 601 is preferablylimited in size to remain fairly unobtrusive on the desktop, the numberof characters and names in a given field 603, 605, 607, may be limited,with scroll bars 609, 611 being usable to view any presently unseenitems. In an embodiment of the invention, the friend and group items inthe group bar 601 are ordered within their sections 605, 607 via dynamiclist ordering.

In addition to the various controls, sections, and features of the groupbar 601 already discussed, there are also preferably provided typicalwindow controls as needed, such as a minimize control 613, and a closecontrol 615. Other window controls and options may be provided invarious implementations. For example, a selectable help item may beprovided so that a user can access aid in operating the application whenneeded.

The group bar 601 is preferably usually maintained on the user's desktopor other display by the group interaction application, even when theuser is not actively in communication with any friend or group member,as a reminder of the relationships and more importantly as a point ofcontact to, and information about, the friends or groups. The user canutilize the group bar to manage their social interactions by setting amood, mode, and status. In particular, the user's chosen mood appears inthe self area 603 adjacent to their name and character (such as “feelin'fine” in the figure) and is available to other friends or group members.For example, by hovering the cursor over James' friend icon 617, Tina(the current user as identified in the self area 603) is able to viewJames' mood, “Life is good,” in a pop-up window 619. In addition tosetting mood, users are also able to set a mode. For example, Tina maychoose for social management purposes to appear as offline to all orsome of her friends and group members. It can be seen from the pop-upwindow 619 that James' mode is “online,” at least with respect to Tina.Various modes include invisible (i.e. offline), work mode, or any othermode that the user may choose to project. The status of the user letsother friends or group members know more about what that user isinvolved in. For example, James' status appears to Tina as “Idle.”

As noted, the group bar 601 serves as a point of contact from the userto their friends and groups. From observing the appropriate items in thegroup bar 601, the user can determine what if anything each friend orgroup is involved in. For example, it can be seen by Tina that the EconWonks group, represented by the item 621, is viewing video material suchas an animation or video segment, represented by the activity icon 623.Similarly, it can be seen that the RiffRaff group, represented by item625, is listening to audio material and chatting.

The user, in this case Tina, can use the group bar 601 to join in acurrent group session or to start a session. For example, bymouse-clicking on a group icon, the relevant group space appears onTina's screen, in the case of an ongoing session. With respect to a newsession a group space appears, and other group members can see, viatheir respective group bars, the activities of Tina within the groupspace. As noted above, the group space itself also provides an avenue,through the character list, for contacting group members, such as toinvite them to join in a session.

There are a number of other possible implementations for a launch pointfor the group interaction application. For example, a simplified launchpoint may not be configured as a bar, but may instead appear as anothershaped space, having tools and features situated thereon. Such a spacecan incorporate many of the aspects of the group space and the groupbar. For example, the space can include selectable controls formodifying its appearance, closing and minimizing it, accessing help,accessing an existing group or initiating an ad hoc group centered on aselected activity, accessing a library of received greetings, and soforth. Other controls and features may be included in addition to orinstead of those described, and the shape of the space may be any shapedesired by the designer. The alternative launch point can provide a wayto more explicitly expose a user to the range of features supported bythe group interaction application, providing an easier start-upexperience for the user.

A further graphical item associated with the group space and itsunderlying application in an embodiment of the invention is a personalspace 701, as shown in FIG. 7. The personal space 701 is a place for itsowner to privately express herself or himself through art, audiomaterial, pictures, a social network, and a journal. The journal 703 isthe central aspect of the personal space 701, providing a written recordof the drafter's thoughts and feelings. The journal as well as the otherfeatures of the personal space 701 are accessible via tabs in anembodiment of the invention. Thus there is presented in the personalspace 701 a journal tab 705 to access the journal 703, an audio tab 707usable to access any music hosted in the space 701, a pictures tab 709usable to access any hosted pictures, and a calling card tab 711 usableto access the owner's calling card. The calling card is a card that maybe distributed by its owner to convey information about the owner andtheir interests. Finally, the personal space also includes a “myfriends” tab, which can be actuated to display the owner's socialnetwork, i.e. the friends and groups with which the owner is associated.The journal 703 includes date frame selection controls, e.g. a “current”control 715 usable to view the current journal entries, and an “archive”control 717 usable to view archived journal entries. Whichever versionof the journal is viewed, a scroll bar 719 may also be provided to allowthe viewer to scroll through the journal material. Finally, the personalspace 701 also includes other windows controls where appropriate, suchas close control 721, which is usable to close the space 701.

Note that the personal space 701 is by definition personal. Accordingly,it is not freely viewable by all parties, including group members orfriends associated with the owner. Rather it is available only bypermission of the owner, and thus serves to introduce a more intimatelevel of connection when circumstances warrant. Thus, if the owner isinvolved in a group session and shares his or her personal space withone other group member, the remaining members of the group will not beable to see the space. It is also contemplated that the owner maypermanently or for certain periods view the personal space privatelywithout sharing it in any way with another party.

Just as in the physical world, users of the group interactionapplication and its related features will expect their relationships toevolve over time, acquiring a sense of history and group identity. Thisobjective is furthered via support in the group space 401 for both theacquisition of group artifacts and the accumulation of group history.With respect to group history, the group history is maintained so that auser may go back and look at what has occurred, in terms of selected orsignificant events, within the group. Thus, notifications (filereceived, greeting received, new member joined group, file downloadcomplete, file no longer available) are stored and may be perused andkept or deleted. This may especially useful when a user has left theircomputer momentarily and an event occurs while they are absent.Preferably the stored history at a particular user's machine is clearedwholly or partially, such as of all greeting notifications, when thecurrent group session is terminated with respect to that user. In thismanner, the group history file size is limited to a reasonable level.

The storage location for the group history is preferably thepeer-to-peer file cache when the invention is implemented in a wholly orpartially peer-to-peer network environment, although such is notrequired. If the cache file size is limited, entries are preferablyculled on a first-in first-out basis, so that older items are removedprior to newer items. In some cases, a user may be able to retrieve anitem from the peer-to-peer file system even though it has been deletedfrom the relevant peer-to-peer cache.

With respect to artifacts, e.g. the items generated by or shared withthe group during their sessions, such as annotated pictures, etc., theseartifacts may be saved in the same manner as the group history. Thus, auser can elect to view an annotated photograph that was generated duringa prior group session, with the understanding that in an environment oflimited memory, certain older items may at some point becomeunavailable.

Having discussed the user interface aspects of the group space andassociated graphical items, the underlying modular group framework willnow be discussed in greater detail. It is desirable that the group spaceapplication be extensible so that activities may be added over time, inaddition to the activities already provided with the application upondistribution. Accordingly, the programmatic configuration of theunderlying group interaction application is preferably modular so thatadditional activity modules may be constructed by third parties tointerface with the application. Thus, for example, a photo activitymodule that is accessed by the group interaction application providesthe photo activity functionality. Similarly, the audio activityfunctionality is provided by an audio activity module. Additionalmodules could be for example, a shared journal activity module, a “jamsession” activity module, and game activity modules.

The schematic diagram of FIG. 8 illustrates the modular nature andprogrammatic components of the group interaction application. Theprimary component of the architecture is the module manager 801. Themodule manager presents an interface such as IRegister 803 for allowingadditional activity modules such as modules 802, 804, and 806 to installand uninstall themselves from the group interaction application 813.Each module comprises an activity interface, such as IActivityModule807, as well as activity resources 809, such as for example, clip art.As part of the install process, the module to be added providesinformation about itself, such as through an IModuleInfo interface 805,sufficient to allow the module to be loaded from a group space menu orother access point. In addition, the module should provide sufficientinformation to allow the group interaction application 813 to supplymodule-specific user interface elements and module-specific helpinformation. This information is useful additionally when a file isautomatically transferred into the group space such as by a drag anddrop operation. In this case, the module identifying information is usedto ensure that the proper module is loaded, if need be, and that in anycase, the file is dropped into the appropriate module. An activitynotification interface such as IActivityPresence 811 on the modulemanager 801 is usable to notify other users of similar modules that theuser of the present module is active in the module. Thus, for example, agroup member having a photo activity module may be notified viaIActivityPresence 811 when another group member is active in theirrespective photo activity module.

Each module interacts with both the module manager 801 and the groupspace container module 813 which is primarily responsible for presentingthe group space 401 and processing events, commands, etc., therein. Anappropriate interface to the group space container module 813 isprovided, such as IGSC 815. Both the group space container 813 and themodule manager 801 have access to a peer-to-peer group framework 817,which is described in further detail with respect to FIG. 9. Theframework 817 in turn accesses messenger facilities 819 for sendinginvitations and so forth, as well as a peer-to-peer interface 821 foraccessing the peer-to-peer network services and functions.

Note that a “LiveWire” application 823 optionally also interfaces withthe module manager 801, the group space container 813, and the groupframework 817 to perform its functions. The livewire applicationperforms and facilitates various functions as outlined in U.S. PatentApplication Serial Number (attorney docket number 216256), filed on Jun.18, 2002, by Zaner et al., entitled “Visual Group Interface For GroupConnectivity,” which is herein incorporated by reference in its entiretyfor all that it teaches without limitation whatsoever to any particularsubject matter.

The group framework is illustrated in greater detail schematically inFIG. 9. The group framework is an API that exposes a set of groupobjects 901 such as group object 903 (shown expanded). A group isessentially a set of people, or more precisely their machines, asrepresented in user collection 907, that are connected over a networkwith a synchronized database, file store, and the ability to sendtransient messages to each other.

Group objects can be sandboxed in two ways. The first way is throughtheir application ID. If a group object requests a record store 905 (orfilestore, etc) based on their application ID, they will only seerecords stored by them. Another way in which to sandbox a group isthrough sub-groups, such as in subgroup collection 905. A sub-group isessentially a “pointer” to a separate group object. The object of asub-group is to create a “child group” so that an application can havesecure temporary members. If a temporary member is invited to thesubgroup, once they leave, they cannot access the original group becauseit is a separate group. This is also useful in establishing a transientsession when not all members of the group want to receive all thenetwork data of an activity that is transpiring.

The group object 903 thus comprises a record store 902 and a file sharestore 906. Both stores 906 and 902 are distributed. In particular, thefile share store 906 is a distributed file system that provides sharedfiles to group members. Optimally the network of group members isarranged so that file transfer occurs efficiently, i.e. such that lowerbandwidth members are topographically located further toward the fringeof the network, whereas higher bandwidth members are preferably locatedmore centrally and are used to further fan materials to other members.The record store 902 is essentially a distributed shared database.

FIG. 10 shows an alternative group space representation includingadditional activities and functionality. Although a number of the areasand features shown perform a function similar to embodiments describedabove, certain aspects differ. The group space controls will be brieflydescribed. The group icon 1009 identifies the group associated with thespace. The drop target 1011 allows a user to drop a photograph, texture,etc and thereby to skin the entire group space accordingly. By selectingthe invite button 1013, the user can invite another participant into thegroup. A standard help button 1015 is preferably provided to allow usersto access help materials regarding the use of the group space, as wellas its functionalities and features.

A graphical list 1017 provides a launch point for various activitiesthrough user selection of the appropriate icon. The activity iconsillustrated include icons for an audio activity, a scrapbook activity,and a chat activity. As more activities become available, due to themodular nature of the underlying group interaction application, moreicons will be placed in the list 1017. Other controls include a “close”control 1019, a “minimize” control 1021, and a “return to originalconfiguration” control 1023. The latter is usable to return the shapeand skin of the space, which are user alterable, to an original statereflecting a configuration prior to user alteration.

A memory cube icon 1025 allows users to save activities, providing analternative history mechanism to that described earlier. In particular,after selecting the memory cube icon 1025, the user is then prompted toindicate which activities to save. For example, a dialog will prompt theuser to select any or all of the ongoing activities, such as a chatdiscussion, a scrapbook activity, and an audio activity. After selectingwhich activities to save, the application saves the activities in theirpresent state without halting the activity, to a file representedgraphically in an embodiment of the invention as a cube. The saving stepis accompanied preferably in an embodiment of the invention by anorigami animation “folding” the selected activities into a cube. Theuser may be prompted for a save location, with the user's desktop beingthe preferred default location.

The history saved in this manner may be used in any way that the userdesires. For example, the memory cubes may organized in files,positioned on the desktop, dragged and dropped onto the corkboard (to bediscussed hereinafter) for viewing, listening, or reading by the othergroup members, shared via email or instant messaging, posted on websites or web logs, etc. In an embodiment of the invention, however, thememory cubes are not editable. This is because one purpose that manyusers will want to employ the cubes for is to capture the emotion andspontaneity of a moment. To allow editing would tend to defeat thispurpose as many users would edit the cubes to achieve a “perfect” memoryrather than preserve what really transpired. Of course, editing may beallowed in embodiments according to designer and/or user preferences.

The memory cubes may be implemented in either of two ways. In the first,the memory cube is an individual feature, so that a user may cube anactivity without notifying or disturbing any of the other members.Alternatively, the memory cube is a group feature so that any member canaccess the cube, the saved history being stored in the group storage ata shared group server.

The scrollable group member icon/name listing 1001 performs a functionsimilar to that above. Similarly, the chat space 1003 is usable in themanner described earlier. In addition, a control such as the fortunecookie control 1005 is usable to provide conversation starters, jokes,ice-breakers and so on. In particular, by manipulating the control 1005,the user is able to insert a joke, little-known fact, etc. into theconversation, wherein the material is selected randomly from a databaseof such material. Users can supplement the database with other materialsas desired. The emoticon control 1007 is manipulated by the user toinsert a selected emoticon (an icon that conveys emotion) into theconversation. In an embodiment of the invention, the control 1007 yieldsa drop-down list of emoticons for selection.

At the left of the group space, a group corkboard 1027 is displayed. Thecorkboard 1027 acts in a similar fashion to a physical work space ordormitory corkboard, in that users are free to post materials to thecorkboard 1027 for others to observe. Any type of material may be postedto the corkboard by any member, including textual, graphical, pictorial,photographic, animated, video, and audio materials. The corkboard 1027acts as a drop target, accepting dragged and dropped materials such asfiles. Files appear on the corkboard as icons (such as a speaker 1035for audio files, a paper icon for textual files), although in anembodiment of the invention pictures appear as thumbnails. By clickingon the relevant icon or thumbnail, the user is shown a larger image inthe case of visual materials, and in the case of audio materials (oraudio portions of visual materials such as a video sound track) thematerial is audibly presented via speakers.

Controls situated near the corkboard may also be used to add materialsthereto. For example, a balloon icon 1029 can be selected by the user toadd a cartoon word balloon or thought balloon to the corkboard,typically associated with a particular image, such as of a person. Uponselecting the icon 1029, the user is presented with a dialog boxprompting the user through the process of creating and posting theballoon. A “magnetic letters” icon 1031 can be selected to present alist of letters and words for the user to assemble into a message 1033to post to the corkboard 1027. Similarly, a stick on note icon 1037 canbe used to post short notes 1039 onto the corkboard 1027. By selectingthe icon, the user is provided with an area to enter a textual message,which the user can then post the message to the board 1027 as a note1039. The user can position the note on the board by dragging. In anembodiment of the invention, the notes 1039 are not typically legible onthe board, but are openable by selection, such as by double-clicking, todisplay a larger and legible version. It will be appreciated that anyother corkboard controls, such as a “sticker” control (to allowselection and placement of “stickers”) may additionally or alternativelybe provided without limitation depending upon designer and userpreferences.

In an embodiment of the invention, activity modules are resizable, suchas by grip 1041, and dockable and may be “snapped” onto the group spaceby placing them adjacent to one another. FIG. 11 illustrates aconglomeration of a group space 1101, an audio sharing activity 1103,and a scrapbook activity 1105. It can be seen that the mating sides ofthe components 1101, 1103, 1105 are shaped to come together smoothly toform a unified visual display if the user so chooses.

A scrapbook activity is provided in an embodiment of the invention toallow a user to create a virtual scrapbook. FIGS. 12 and 13 illustrateexemplary user interfaces for the scrapbook activity in embodiments ofthe invention. The scrapbook 1201, 1301 is usable to create a group (orpersonal) artifact comprised of photographs and other materials. Thescrapbook 1201, 1301 opens up empty in a collage view, for a newscrapbook, and can then be filled and populated by the user. Forexample, photographs can be dragged and dropped into the scrapbook 1201,1301, and dragged within the scrapbook 1201, 1301. The scrapbooksupports one or both of two views in embodiments of the invention, thefirst being a collage view, and the second being a single view. In anembodiment of the invention, a view control 1203, 1303 allows the userto select either the collage view or the single view. In the singleview, a page forward/backward control (not shown) may be provided toallow the members to flip through the scrapbookphotograph-by-photograph. In the collage view, a similar control may beprovided to allow members to scroll across the scrapbook.

It can be seen that the scrapbook activity shares a number of featureswith the other windows discussed herein. For example, the scrapbookpreferably supports a group icon 1205, 1305, a skin drop target 1207,1307, a help button 1209, 1309, a close control 1211, 1311, a minimizecontrol 1213, 1313, and a “return to original state” control 1215, 1315.In addition, a supplemental control 1217, 1317 is selectable by the userto add or remove photographs from the scrapbook 1201, 1301. In anembodiment of the invention, a print control 1221, 1321, prints thescrapbook 1201, 1301, when selected. In a further embodiment, selectionof the print control 1221, 1321 yields a prompt to the user to selectthe details of the print job, such as for example whether to print allor only one of the photos, what resolution to use, etc.

Finally, the scrapbook also preferably includes tools 1223, 1323 usableto annotate the photographs of the scrapbook. For example, a drawingcontrol 1225, 1325, similar to that discussed above, can be used to drawon the photographs. A palette 1227 allows the user to select the colorin which to draw, while a line selection field 1229 allows the user toselect a line width in which to draw. A balloon control 1231, 1331 isselectable to allow a user to place a cartoon word or thought balloon ona photograph in the scrapbook as discussed above. In particular,selection of the balloon control 1231, 1331 yields a drop down array1333 of selectable choices of balloon types to insert. Other annotationtools include a note tool 1235, 1335 usable to insert a note into thescrapbook, an audio insert tool 1237, 1337 usable to insert a selectableaudio note into the scrapbook, and a map control 1239, 1339. The mapcontrol 1239, 1339 is selectable to access or input geographicalinformation regarding a particular photograph, such as a location wherethe photograph was taken. Such geographical information may be presentedin the form of a map, with one or more photographs situated on the mapat particular locations as appropriate. As a group activity, thescrapbook is shared synchronously. That is, each group member sees thesame view of the scrapbook as the other members. In addition, each canannotate the current view, and can see others' annotations as well.

The scrapbook has interesting benefits when one or more members areconnected to the group via a mobile device such as a handheld phone orother mobile computing device. For example, the scrapbook can be used asa travel journal that is sharable with one's group members, eithersynchronously or a synchronously. For GPS equipped mobile devices, theGPS information can be automatically linked into the scrapbook, forexample automatically providing a description or map of the locationwhere a photograph is taken. There are many other ways in which thescrapbook can be used to share one member's mobile experience with othermembers that may or may not be mobile. For example, one member can shopfor a prom dress, posting photographs of herself to the scrapbook as shetries on different dresses. In addition to simply observing, the othergroup members can comment on the dresses, or vote on which photographlooks best, to help the shopping member pick a dress.

In addition to the functionality described above, a number of otherfeatures may be implemented without limitation. For example, in additionto the file sharing functionality described above, a user may also, inan embodiment of the invention, allow other group members to “roam”their personal data, such as buddy lists, character images, skins,pictures, journals, audio files, etc. Additionally, in order to simplifythe use of the group interaction application for users alreadyestablished in alternative Internet messenger technologies, it isdesirable both to allow communication to users of other Internetmessenger technologies and to utilize the contact lists established bythe user for such technologies to provide contact information for usewithin the group interaction application.

It will be appreciated that a novel application and interface for groupinteraction over a network have been described. In view of the manypossible embodiments to which the principles of this invention may beapplied, it should be recognized that the embodiments described hereinwith respect to the drawing figures are meant to be illustrative onlyand should not be taken as limiting the scope of the invention. Those ofskill in the art will recognize that the elements of the illustratedembodiments shown in software may be implemented in hardware and viceversa or that the illustrated embodiments can be modified in arrangementand detail without departing from the spirit of the invention. Forexample, although the invention has been described primarily withreference to personal computers and their associated displays anddesktops, it should be appreciated that the invention does not require aPC or a traditional desktop, but rather can also be implemented on otherdevices that support a visual display function. Therefore, the inventionas described herein contemplates all such embodiments as may come withinthe scope of the following claims and equivalents thereof.

1. A system for enabling group interaction, comprising: a displaycomponent that generates an interface that facilitates interactionbetween a first user and at least one other user, the interfacecomprises a customizable group space; and a communication component thatfacilitates a communication session between the first user and the atleast one other user.
 2. The system of claim 1, further comprising agroup bar within the interface.
 3. The system of claim 2, the group barfurther comprises a first section that displays a character or graphicand name associated with the first user.
 4. The system of claim 2, thegroup bar further comprises a second section that displays a characteror graphic and name pair of at least one other user belonging to a groupof which the first user is a member.
 5. The system of claim 2, the groupbar further comprises a third section that displays a character orgraphic and name pair associated with at least one other user.
 6. Thesystem of claim 2, the group bar further comprises an availabilitycomponent that allows the first user to define his/her current mode orstatus.
 7. The system of claim 2, the group bar further comprises acontrol component that displays window controls within the interface. 8.The system of claim 7, the window controls further comprise at least oneof a minimize control and a close control.
 9. The system of claim 1, thedisplay component further comprises a user status component thatdetermines and displays the current status of the at least one otheruser.
 10. A system for enabling group interaction, comprising: means forgenerating a user interface that allows a first user and at least oneother user to interact, the user interface comprises a customizablegroup space; and means for facilitating communications between the firstuser and the at least one other user.
 11. A method for enabling a groupinteraction, comprising: displaying to a first user via a first userdisplay, a group bar having thereon a first selectable group iconassociated with a first group comprising the first user and at least oneother user; receiving from the first user a selection of the first groupicon; and in response to the receipt of the selection of the first groupicon, sending a communication over the network to a computing deviceused by the at least one other user to initiate a communication sessionbetween the first user and the at least one other user.
 12. The methodof claim 11, further comprising presenting a group space to the firstuser in response to receipt of the selection of the group icon, thegroup space is uniquely associated with the first group.
 13. The methodof claim 11, the group bar has thereon a second selectable group iconassociated with a second group comprising the first user and at leastone other user who is not a member of the first group.
 14. The method ofclaim 11, the communication session further comprises displayingmessages sent between members of a group.
 15. The method of claim 14,further comprising identifying the sender of a message by displaying atleast one of a name of the sender and a character associated with thesender.
 16. The method of claim 11, further comprising displaying agroup space containing a list of users.
 17. The method of claim 16, thelist of users comprising at least one of user names and charactersassociated with users.
 18. The method of claim 17, the list of usersfurther comprises displaying users that are currently available,currently unavailable, or some combination thereof.
 19. The method ofclaim 11, further comprising displaying a group space for displayingmultimedia content selected by a user of the group.
 20. The method ofclaim 19, the multimedia content comprising at least one of audio,video, and graphical content.